package com.vrp3d.domain.po;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class BoothExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public BoothExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andShowroomIdIsNull() {
            addCriterion("showroom_id is null");
            return (Criteria) this;
        }

        public Criteria andShowroomIdIsNotNull() {
            addCriterion("showroom_id is not null");
            return (Criteria) this;
        }

        public Criteria andShowroomIdEqualTo(Integer value) {
            addCriterion("showroom_id =", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdNotEqualTo(Integer value) {
            addCriterion("showroom_id <>", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdGreaterThan(Integer value) {
            addCriterion("showroom_id >", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("showroom_id >=", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdLessThan(Integer value) {
            addCriterion("showroom_id <", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdLessThanOrEqualTo(Integer value) {
            addCriterion("showroom_id <=", value, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdIn(List<Integer> values) {
            addCriterion("showroom_id in", values, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdNotIn(List<Integer> values) {
            addCriterion("showroom_id not in", values, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdBetween(Integer value1, Integer value2) {
            addCriterion("showroom_id between", value1, value2, "showroomId");
            return (Criteria) this;
        }

        public Criteria andShowroomIdNotBetween(Integer value1, Integer value2) {
            addCriterion("showroom_id not between", value1, value2, "showroomId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdIsNull() {
            addCriterion("porcelain_id is null");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdIsNotNull() {
            addCriterion("porcelain_id is not null");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdEqualTo(String value) {
            addCriterion("porcelain_id =", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdNotEqualTo(String value) {
            addCriterion("porcelain_id <>", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdGreaterThan(String value) {
            addCriterion("porcelain_id >", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdGreaterThanOrEqualTo(String value) {
            addCriterion("porcelain_id >=", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdLessThan(String value) {
            addCriterion("porcelain_id <", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdLessThanOrEqualTo(String value) {
            addCriterion("porcelain_id <=", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdLike(String value) {
            addCriterion("porcelain_id like", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdNotLike(String value) {
            addCriterion("porcelain_id not like", value, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdIn(List<String> values) {
            addCriterion("porcelain_id in", values, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdNotIn(List<String> values) {
            addCriterion("porcelain_id not in", values, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdBetween(String value1, String value2) {
            addCriterion("porcelain_id between", value1, value2, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdNotBetween(String value1, String value2) {
            addCriterion("porcelain_id not between", value1, value2, "porcelainId");
            return (Criteria) this;
        }

        public Criteria andWorkNameIsNull() {
            addCriterion("work_name is null");
            return (Criteria) this;
        }

        public Criteria andWorkNameIsNotNull() {
            addCriterion("work_name is not null");
            return (Criteria) this;
        }

        public Criteria andWorkNameEqualTo(String value) {
            addCriterion("work_name =", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameNotEqualTo(String value) {
            addCriterion("work_name <>", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameGreaterThan(String value) {
            addCriterion("work_name >", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameGreaterThanOrEqualTo(String value) {
            addCriterion("work_name >=", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameLessThan(String value) {
            addCriterion("work_name <", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameLessThanOrEqualTo(String value) {
            addCriterion("work_name <=", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameLike(String value) {
            addCriterion("work_name like", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameNotLike(String value) {
            addCriterion("work_name not like", value, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameIn(List<String> values) {
            addCriterion("work_name in", values, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameNotIn(List<String> values) {
            addCriterion("work_name not in", values, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameBetween(String value1, String value2) {
            addCriterion("work_name between", value1, value2, "workName");
            return (Criteria) this;
        }

        public Criteria andWorkNameNotBetween(String value1, String value2) {
            addCriterion("work_name not between", value1, value2, "workName");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeIsNull() {
            addCriterion("exhibits_range is null");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeIsNotNull() {
            addCriterion("exhibits_range is not null");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeEqualTo(String value) {
            addCriterion("exhibits_range =", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeNotEqualTo(String value) {
            addCriterion("exhibits_range <>", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeGreaterThan(String value) {
            addCriterion("exhibits_range >", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeGreaterThanOrEqualTo(String value) {
            addCriterion("exhibits_range >=", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeLessThan(String value) {
            addCriterion("exhibits_range <", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeLessThanOrEqualTo(String value) {
            addCriterion("exhibits_range <=", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeLike(String value) {
            addCriterion("exhibits_range like", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeNotLike(String value) {
            addCriterion("exhibits_range not like", value, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeIn(List<String> values) {
            addCriterion("exhibits_range in", values, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeNotIn(List<String> values) {
            addCriterion("exhibits_range not in", values, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeBetween(String value1, String value2) {
            addCriterion("exhibits_range between", value1, value2, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeNotBetween(String value1, String value2) {
            addCriterion("exhibits_range not between", value1, value2, "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andProductionStandardIsNull() {
            addCriterion("production_standard is null");
            return (Criteria) this;
        }

        public Criteria andProductionStandardIsNotNull() {
            addCriterion("production_standard is not null");
            return (Criteria) this;
        }

        public Criteria andProductionStandardEqualTo(String value) {
            addCriterion("production_standard =", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardNotEqualTo(String value) {
            addCriterion("production_standard <>", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardGreaterThan(String value) {
            addCriterion("production_standard >", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardGreaterThanOrEqualTo(String value) {
            addCriterion("production_standard >=", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardLessThan(String value) {
            addCriterion("production_standard <", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardLessThanOrEqualTo(String value) {
            addCriterion("production_standard <=", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardLike(String value) {
            addCriterion("production_standard like", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardNotLike(String value) {
            addCriterion("production_standard not like", value, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardIn(List<String> values) {
            addCriterion("production_standard in", values, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardNotIn(List<String> values) {
            addCriterion("production_standard not in", values, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardBetween(String value1, String value2) {
            addCriterion("production_standard between", value1, value2, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andProductionStandardNotBetween(String value1, String value2) {
            addCriterion("production_standard not between", value1, value2, "productionStandard");
            return (Criteria) this;
        }

        public Criteria andPictureIsNull() {
            addCriterion("picture is null");
            return (Criteria) this;
        }

        public Criteria andPictureIsNotNull() {
            addCriterion("picture is not null");
            return (Criteria) this;
        }

        public Criteria andPictureEqualTo(String value) {
            addCriterion("picture =", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotEqualTo(String value) {
            addCriterion("picture <>", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThan(String value) {
            addCriterion("picture >", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureGreaterThanOrEqualTo(String value) {
            addCriterion("picture >=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThan(String value) {
            addCriterion("picture <", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLessThanOrEqualTo(String value) {
            addCriterion("picture <=", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureLike(String value) {
            addCriterion("picture like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotLike(String value) {
            addCriterion("picture not like", value, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureIn(List<String> values) {
            addCriterion("picture in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotIn(List<String> values) {
            addCriterion("picture not in", values, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureBetween(String value1, String value2) {
            addCriterion("picture between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andPictureNotBetween(String value1, String value2) {
            addCriterion("picture not between", value1, value2, "picture");
            return (Criteria) this;
        }

        public Criteria andAuthorNameIsNull() {
            addCriterion("author_name is null");
            return (Criteria) this;
        }

        public Criteria andAuthorNameIsNotNull() {
            addCriterion("author_name is not null");
            return (Criteria) this;
        }

        public Criteria andAuthorNameEqualTo(String value) {
            addCriterion("author_name =", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameNotEqualTo(String value) {
            addCriterion("author_name <>", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameGreaterThan(String value) {
            addCriterion("author_name >", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameGreaterThanOrEqualTo(String value) {
            addCriterion("author_name >=", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameLessThan(String value) {
            addCriterion("author_name <", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameLessThanOrEqualTo(String value) {
            addCriterion("author_name <=", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameLike(String value) {
            addCriterion("author_name like", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameNotLike(String value) {
            addCriterion("author_name not like", value, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameIn(List<String> values) {
            addCriterion("author_name in", values, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameNotIn(List<String> values) {
            addCriterion("author_name not in", values, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameBetween(String value1, String value2) {
            addCriterion("author_name between", value1, value2, "authorName");
            return (Criteria) this;
        }

        public Criteria andAuthorNameNotBetween(String value1, String value2) {
            addCriterion("author_name not between", value1, value2, "authorName");
            return (Criteria) this;
        }

        public Criteria andShapeIsNull() {
            addCriterion("shape is null");
            return (Criteria) this;
        }

        public Criteria andShapeIsNotNull() {
            addCriterion("shape is not null");
            return (Criteria) this;
        }

        public Criteria andShapeEqualTo(String value) {
            addCriterion("shape =", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeNotEqualTo(String value) {
            addCriterion("shape <>", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeGreaterThan(String value) {
            addCriterion("shape >", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeGreaterThanOrEqualTo(String value) {
            addCriterion("shape >=", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeLessThan(String value) {
            addCriterion("shape <", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeLessThanOrEqualTo(String value) {
            addCriterion("shape <=", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeLike(String value) {
            addCriterion("shape like", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeNotLike(String value) {
            addCriterion("shape not like", value, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeIn(List<String> values) {
            addCriterion("shape in", values, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeNotIn(List<String> values) {
            addCriterion("shape not in", values, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeBetween(String value1, String value2) {
            addCriterion("shape between", value1, value2, "shape");
            return (Criteria) this;
        }

        public Criteria andShapeNotBetween(String value1, String value2) {
            addCriterion("shape not between", value1, value2, "shape");
            return (Criteria) this;
        }

        public Criteria andPatternIsNull() {
            addCriterion("pattern is null");
            return (Criteria) this;
        }

        public Criteria andPatternIsNotNull() {
            addCriterion("pattern is not null");
            return (Criteria) this;
        }

        public Criteria andPatternEqualTo(String value) {
            addCriterion("pattern =", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternNotEqualTo(String value) {
            addCriterion("pattern <>", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternGreaterThan(String value) {
            addCriterion("pattern >", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternGreaterThanOrEqualTo(String value) {
            addCriterion("pattern >=", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternLessThan(String value) {
            addCriterion("pattern <", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternLessThanOrEqualTo(String value) {
            addCriterion("pattern <=", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternLike(String value) {
            addCriterion("pattern like", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternNotLike(String value) {
            addCriterion("pattern not like", value, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternIn(List<String> values) {
            addCriterion("pattern in", values, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternNotIn(List<String> values) {
            addCriterion("pattern not in", values, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternBetween(String value1, String value2) {
            addCriterion("pattern between", value1, value2, "pattern");
            return (Criteria) this;
        }

        public Criteria andPatternNotBetween(String value1, String value2) {
            addCriterion("pattern not between", value1, value2, "pattern");
            return (Criteria) this;
        }

        public Criteria andTechnologyIsNull() {
            addCriterion("technology is null");
            return (Criteria) this;
        }

        public Criteria andTechnologyIsNotNull() {
            addCriterion("technology is not null");
            return (Criteria) this;
        }

        public Criteria andTechnologyEqualTo(String value) {
            addCriterion("technology =", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyNotEqualTo(String value) {
            addCriterion("technology <>", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyGreaterThan(String value) {
            addCriterion("technology >", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyGreaterThanOrEqualTo(String value) {
            addCriterion("technology >=", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyLessThan(String value) {
            addCriterion("technology <", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyLessThanOrEqualTo(String value) {
            addCriterion("technology <=", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyLike(String value) {
            addCriterion("technology like", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyNotLike(String value) {
            addCriterion("technology not like", value, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyIn(List<String> values) {
            addCriterion("technology in", values, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyNotIn(List<String> values) {
            addCriterion("technology not in", values, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyBetween(String value1, String value2) {
            addCriterion("technology between", value1, value2, "technology");
            return (Criteria) this;
        }

        public Criteria andTechnologyNotBetween(String value1, String value2) {
            addCriterion("technology not between", value1, value2, "technology");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(String value) {
            addCriterion("type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(String value) {
            addCriterion("type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(String value) {
            addCriterion("type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(String value) {
            addCriterion("type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(String value) {
            addCriterion("type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(String value) {
            addCriterion("type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLike(String value) {
            addCriterion("type like", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotLike(String value) {
            addCriterion("type not like", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<String> values) {
            addCriterion("type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<String> values) {
            addCriterion("type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(String value1, String value2) {
            addCriterion("type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(String value1, String value2) {
            addCriterion("type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andMaterialIsNull() {
            addCriterion("material is null");
            return (Criteria) this;
        }

        public Criteria andMaterialIsNotNull() {
            addCriterion("material is not null");
            return (Criteria) this;
        }

        public Criteria andMaterialEqualTo(String value) {
            addCriterion("material =", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotEqualTo(String value) {
            addCriterion("material <>", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialGreaterThan(String value) {
            addCriterion("material >", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialGreaterThanOrEqualTo(String value) {
            addCriterion("material >=", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialLessThan(String value) {
            addCriterion("material <", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialLessThanOrEqualTo(String value) {
            addCriterion("material <=", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialLike(String value) {
            addCriterion("material like", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotLike(String value) {
            addCriterion("material not like", value, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialIn(List<String> values) {
            addCriterion("material in", values, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotIn(List<String> values) {
            addCriterion("material not in", values, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialBetween(String value1, String value2) {
            addCriterion("material between", value1, value2, "material");
            return (Criteria) this;
        }

        public Criteria andMaterialNotBetween(String value1, String value2) {
            addCriterion("material not between", value1, value2, "material");
            return (Criteria) this;
        }

        public Criteria andHighlyIsNull() {
            addCriterion("highly is null");
            return (Criteria) this;
        }

        public Criteria andHighlyIsNotNull() {
            addCriterion("highly is not null");
            return (Criteria) this;
        }

        public Criteria andHighlyEqualTo(Double value) {
            addCriterion("highly =", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyNotEqualTo(Double value) {
            addCriterion("highly <>", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyGreaterThan(Double value) {
            addCriterion("highly >", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyGreaterThanOrEqualTo(Double value) {
            addCriterion("highly >=", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyLessThan(Double value) {
            addCriterion("highly <", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyLessThanOrEqualTo(Double value) {
            addCriterion("highly <=", value, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyIn(List<Double> values) {
            addCriterion("highly in", values, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyNotIn(List<Double> values) {
            addCriterion("highly not in", values, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyBetween(Double value1, Double value2) {
            addCriterion("highly between", value1, value2, "highly");
            return (Criteria) this;
        }

        public Criteria andHighlyNotBetween(Double value1, Double value2) {
            addCriterion("highly not between", value1, value2, "highly");
            return (Criteria) this;
        }

        public Criteria andCalIsNull() {
            addCriterion("cal is null");
            return (Criteria) this;
        }

        public Criteria andCalIsNotNull() {
            addCriterion("cal is not null");
            return (Criteria) this;
        }

        public Criteria andCalEqualTo(Double value) {
            addCriterion("cal =", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalNotEqualTo(Double value) {
            addCriterion("cal <>", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalGreaterThan(Double value) {
            addCriterion("cal >", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalGreaterThanOrEqualTo(Double value) {
            addCriterion("cal >=", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalLessThan(Double value) {
            addCriterion("cal <", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalLessThanOrEqualTo(Double value) {
            addCriterion("cal <=", value, "cal");
            return (Criteria) this;
        }

        public Criteria andCalIn(List<Double> values) {
            addCriterion("cal in", values, "cal");
            return (Criteria) this;
        }

        public Criteria andCalNotIn(List<Double> values) {
            addCriterion("cal not in", values, "cal");
            return (Criteria) this;
        }

        public Criteria andCalBetween(Double value1, Double value2) {
            addCriterion("cal between", value1, value2, "cal");
            return (Criteria) this;
        }

        public Criteria andCalNotBetween(Double value1, Double value2) {
            addCriterion("cal not between", value1, value2, "cal");
            return (Criteria) this;
        }

        public Criteria andBellySizeIsNull() {
            addCriterion("belly_size is null");
            return (Criteria) this;
        }

        public Criteria andBellySizeIsNotNull() {
            addCriterion("belly_size is not null");
            return (Criteria) this;
        }

        public Criteria andBellySizeEqualTo(Double value) {
            addCriterion("belly_size =", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeNotEqualTo(Double value) {
            addCriterion("belly_size <>", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeGreaterThan(Double value) {
            addCriterion("belly_size >", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeGreaterThanOrEqualTo(Double value) {
            addCriterion("belly_size >=", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeLessThan(Double value) {
            addCriterion("belly_size <", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeLessThanOrEqualTo(Double value) {
            addCriterion("belly_size <=", value, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeIn(List<Double> values) {
            addCriterion("belly_size in", values, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeNotIn(List<Double> values) {
            addCriterion("belly_size not in", values, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeBetween(Double value1, Double value2) {
            addCriterion("belly_size between", value1, value2, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBellySizeNotBetween(Double value1, Double value2) {
            addCriterion("belly_size not between", value1, value2, "bellySize");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterIsNull() {
            addCriterion("bottom_diameter is null");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterIsNotNull() {
            addCriterion("bottom_diameter is not null");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterEqualTo(Double value) {
            addCriterion("bottom_diameter =", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterNotEqualTo(Double value) {
            addCriterion("bottom_diameter <>", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterGreaterThan(Double value) {
            addCriterion("bottom_diameter >", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterGreaterThanOrEqualTo(Double value) {
            addCriterion("bottom_diameter >=", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterLessThan(Double value) {
            addCriterion("bottom_diameter <", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterLessThanOrEqualTo(Double value) {
            addCriterion("bottom_diameter <=", value, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterIn(List<Double> values) {
            addCriterion("bottom_diameter in", values, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterNotIn(List<Double> values) {
            addCriterion("bottom_diameter not in", values, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterBetween(Double value1, Double value2) {
            addCriterion("bottom_diameter between", value1, value2, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andBottomDiameterNotBetween(Double value1, Double value2) {
            addCriterion("bottom_diameter not between", value1, value2, "bottomDiameter");
            return (Criteria) this;
        }

        public Criteria andConfigurationIsNull() {
            addCriterion("configuration is null");
            return (Criteria) this;
        }

        public Criteria andConfigurationIsNotNull() {
            addCriterion("configuration is not null");
            return (Criteria) this;
        }

        public Criteria andConfigurationEqualTo(String value) {
            addCriterion("configuration =", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationNotEqualTo(String value) {
            addCriterion("configuration <>", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationGreaterThan(String value) {
            addCriterion("configuration >", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationGreaterThanOrEqualTo(String value) {
            addCriterion("configuration >=", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationLessThan(String value) {
            addCriterion("configuration <", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationLessThanOrEqualTo(String value) {
            addCriterion("configuration <=", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationLike(String value) {
            addCriterion("configuration like", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationNotLike(String value) {
            addCriterion("configuration not like", value, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationIn(List<String> values) {
            addCriterion("configuration in", values, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationNotIn(List<String> values) {
            addCriterion("configuration not in", values, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationBetween(String value1, String value2) {
            addCriterion("configuration between", value1, value2, "configuration");
            return (Criteria) this;
        }

        public Criteria andConfigurationNotBetween(String value1, String value2) {
            addCriterion("configuration not between", value1, value2, "configuration");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicIsNull() {
            addCriterion("process_characteristic is null");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicIsNotNull() {
            addCriterion("process_characteristic is not null");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicEqualTo(String value) {
            addCriterion("process_characteristic =", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicNotEqualTo(String value) {
            addCriterion("process_characteristic <>", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicGreaterThan(String value) {
            addCriterion("process_characteristic >", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicGreaterThanOrEqualTo(String value) {
            addCriterion("process_characteristic >=", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicLessThan(String value) {
            addCriterion("process_characteristic <", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicLessThanOrEqualTo(String value) {
            addCriterion("process_characteristic <=", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicLike(String value) {
            addCriterion("process_characteristic like", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicNotLike(String value) {
            addCriterion("process_characteristic not like", value, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicIn(List<String> values) {
            addCriterion("process_characteristic in", values, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicNotIn(List<String> values) {
            addCriterion("process_characteristic not in", values, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicBetween(String value1, String value2) {
            addCriterion("process_characteristic between", value1, value2, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicNotBetween(String value1, String value2) {
            addCriterion("process_characteristic not between", value1, value2, "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesIsNull() {
            addCriterion("artistic_features is null");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesIsNotNull() {
            addCriterion("artistic_features is not null");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesEqualTo(String value) {
            addCriterion("artistic_features =", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesNotEqualTo(String value) {
            addCriterion("artistic_features <>", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesGreaterThan(String value) {
            addCriterion("artistic_features >", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesGreaterThanOrEqualTo(String value) {
            addCriterion("artistic_features >=", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesLessThan(String value) {
            addCriterion("artistic_features <", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesLessThanOrEqualTo(String value) {
            addCriterion("artistic_features <=", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesLike(String value) {
            addCriterion("artistic_features like", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesNotLike(String value) {
            addCriterion("artistic_features not like", value, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesIn(List<String> values) {
            addCriterion("artistic_features in", values, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesNotIn(List<String> values) {
            addCriterion("artistic_features not in", values, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesBetween(String value1, String value2) {
            addCriterion("artistic_features between", value1, value2, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesNotBetween(String value1, String value2) {
            addCriterion("artistic_features not between", value1, value2, "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andTransportationIsNull() {
            addCriterion("transportation is null");
            return (Criteria) this;
        }

        public Criteria andTransportationIsNotNull() {
            addCriterion("transportation is not null");
            return (Criteria) this;
        }

        public Criteria andTransportationEqualTo(String value) {
            addCriterion("transportation =", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationNotEqualTo(String value) {
            addCriterion("transportation <>", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationGreaterThan(String value) {
            addCriterion("transportation >", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationGreaterThanOrEqualTo(String value) {
            addCriterion("transportation >=", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationLessThan(String value) {
            addCriterion("transportation <", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationLessThanOrEqualTo(String value) {
            addCriterion("transportation <=", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationLike(String value) {
            addCriterion("transportation like", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationNotLike(String value) {
            addCriterion("transportation not like", value, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationIn(List<String> values) {
            addCriterion("transportation in", values, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationNotIn(List<String> values) {
            addCriterion("transportation not in", values, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationBetween(String value1, String value2) {
            addCriterion("transportation between", value1, value2, "transportation");
            return (Criteria) this;
        }

        public Criteria andTransportationNotBetween(String value1, String value2) {
            addCriterion("transportation not between", value1, value2, "transportation");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNull() {
            addCriterion("phone is null");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNotNull() {
            addCriterion("phone is not null");
            return (Criteria) this;
        }

        public Criteria andPhoneEqualTo(String value) {
            addCriterion("phone =", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotEqualTo(String value) {
            addCriterion("phone <>", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThan(String value) {
            addCriterion("phone >", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("phone >=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThan(String value) {
            addCriterion("phone <", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThanOrEqualTo(String value) {
            addCriterion("phone <=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneLike(String value) {
            addCriterion("phone like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotLike(String value) {
            addCriterion("phone not like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneIn(List<String> values) {
            addCriterion("phone in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotIn(List<String> values) {
            addCriterion("phone not in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneBetween(String value1, String value2) {
            addCriterion("phone between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneNotBetween(String value1, String value2) {
            addCriterion("phone not between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalIsNull() {
            addCriterion("docking_personal is null");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalIsNotNull() {
            addCriterion("docking_personal is not null");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalEqualTo(String value) {
            addCriterion("docking_personal =", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalNotEqualTo(String value) {
            addCriterion("docking_personal <>", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalGreaterThan(String value) {
            addCriterion("docking_personal >", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalGreaterThanOrEqualTo(String value) {
            addCriterion("docking_personal >=", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalLessThan(String value) {
            addCriterion("docking_personal <", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalLessThanOrEqualTo(String value) {
            addCriterion("docking_personal <=", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalLike(String value) {
            addCriterion("docking_personal like", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalNotLike(String value) {
            addCriterion("docking_personal not like", value, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalIn(List<String> values) {
            addCriterion("docking_personal in", values, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalNotIn(List<String> values) {
            addCriterion("docking_personal not in", values, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalBetween(String value1, String value2) {
            addCriterion("docking_personal between", value1, value2, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalNotBetween(String value1, String value2) {
            addCriterion("docking_personal not between", value1, value2, "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(BigDecimal value) {
            addCriterion("price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(BigDecimal value) {
            addCriterion("price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(BigDecimal value) {
            addCriterion("price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(BigDecimal value) {
            addCriterion("price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<BigDecimal> values) {
            addCriterion("price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<BigDecimal> values) {
            addCriterion("price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andIntroductionIsNull() {
            addCriterion("introduction is null");
            return (Criteria) this;
        }

        public Criteria andIntroductionIsNotNull() {
            addCriterion("introduction is not null");
            return (Criteria) this;
        }

        public Criteria andIntroductionEqualTo(String value) {
            addCriterion("introduction =", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionNotEqualTo(String value) {
            addCriterion("introduction <>", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionGreaterThan(String value) {
            addCriterion("introduction >", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionGreaterThanOrEqualTo(String value) {
            addCriterion("introduction >=", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionLessThan(String value) {
            addCriterion("introduction <", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionLessThanOrEqualTo(String value) {
            addCriterion("introduction <=", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionLike(String value) {
            addCriterion("introduction like", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionNotLike(String value) {
            addCriterion("introduction not like", value, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionIn(List<String> values) {
            addCriterion("introduction in", values, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionNotIn(List<String> values) {
            addCriterion("introduction not in", values, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionBetween(String value1, String value2) {
            addCriterion("introduction between", value1, value2, "introduction");
            return (Criteria) this;
        }

        public Criteria andIntroductionNotBetween(String value1, String value2) {
            addCriterion("introduction not between", value1, value2, "introduction");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion("remarks is null");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion("remarks is not null");
            return (Criteria) this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion("remarks =", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion("remarks <>", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion("remarks >", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("remarks >=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion("remarks <", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion("remarks <=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLike(String value) {
            addCriterion("remarks like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotLike(String value) {
            addCriterion("remarks not like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksIn(List<String> values) {
            addCriterion("remarks in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotIn(List<String> values) {
            addCriterion("remarks not in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion("remarks between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion("remarks not between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andAudioIsNull() {
            addCriterion("audio is null");
            return (Criteria) this;
        }

        public Criteria andAudioIsNotNull() {
            addCriterion("audio is not null");
            return (Criteria) this;
        }

        public Criteria andAudioEqualTo(String value) {
            addCriterion("audio =", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioNotEqualTo(String value) {
            addCriterion("audio <>", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioGreaterThan(String value) {
            addCriterion("audio >", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioGreaterThanOrEqualTo(String value) {
            addCriterion("audio >=", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioLessThan(String value) {
            addCriterion("audio <", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioLessThanOrEqualTo(String value) {
            addCriterion("audio <=", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioLike(String value) {
            addCriterion("audio like", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioNotLike(String value) {
            addCriterion("audio not like", value, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioIn(List<String> values) {
            addCriterion("audio in", values, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioNotIn(List<String> values) {
            addCriterion("audio not in", values, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioBetween(String value1, String value2) {
            addCriterion("audio between", value1, value2, "audio");
            return (Criteria) this;
        }

        public Criteria andAudioNotBetween(String value1, String value2) {
            addCriterion("audio not between", value1, value2, "audio");
            return (Criteria) this;
        }

        public Criteria andModelZipFileIsNull() {
            addCriterion("model_zip_file is null");
            return (Criteria) this;
        }

        public Criteria andModelZipFileIsNotNull() {
            addCriterion("model_zip_file is not null");
            return (Criteria) this;
        }

        public Criteria andModelZipFileEqualTo(String value) {
            addCriterion("model_zip_file =", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileNotEqualTo(String value) {
            addCriterion("model_zip_file <>", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileGreaterThan(String value) {
            addCriterion("model_zip_file >", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileGreaterThanOrEqualTo(String value) {
            addCriterion("model_zip_file >=", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileLessThan(String value) {
            addCriterion("model_zip_file <", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileLessThanOrEqualTo(String value) {
            addCriterion("model_zip_file <=", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileLike(String value) {
            addCriterion("model_zip_file like", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileNotLike(String value) {
            addCriterion("model_zip_file not like", value, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileIn(List<String> values) {
            addCriterion("model_zip_file in", values, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileNotIn(List<String> values) {
            addCriterion("model_zip_file not in", values, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileBetween(String value1, String value2) {
            addCriterion("model_zip_file between", value1, value2, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelZipFileNotBetween(String value1, String value2) {
            addCriterion("model_zip_file not between", value1, value2, "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelFileIsNull() {
            addCriterion("model_file is null");
            return (Criteria) this;
        }

        public Criteria andModelFileIsNotNull() {
            addCriterion("model_file is not null");
            return (Criteria) this;
        }

        public Criteria andModelFileEqualTo(String value) {
            addCriterion("model_file =", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileNotEqualTo(String value) {
            addCriterion("model_file <>", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileGreaterThan(String value) {
            addCriterion("model_file >", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileGreaterThanOrEqualTo(String value) {
            addCriterion("model_file >=", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileLessThan(String value) {
            addCriterion("model_file <", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileLessThanOrEqualTo(String value) {
            addCriterion("model_file <=", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileLike(String value) {
            addCriterion("model_file like", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileNotLike(String value) {
            addCriterion("model_file not like", value, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileIn(List<String> values) {
            addCriterion("model_file in", values, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileNotIn(List<String> values) {
            addCriterion("model_file not in", values, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileBetween(String value1, String value2) {
            addCriterion("model_file between", value1, value2, "modelFile");
            return (Criteria) this;
        }

        public Criteria andModelFileNotBetween(String value1, String value2) {
            addCriterion("model_file not between", value1, value2, "modelFile");
            return (Criteria) this;
        }

        public Criteria andDisplayFormIsNull() {
            addCriterion("display_form is null");
            return (Criteria) this;
        }

        public Criteria andDisplayFormIsNotNull() {
            addCriterion("display_form is not null");
            return (Criteria) this;
        }

        public Criteria andDisplayFormEqualTo(Integer value) {
            addCriterion("display_form =", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormNotEqualTo(Integer value) {
            addCriterion("display_form <>", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormGreaterThan(Integer value) {
            addCriterion("display_form >", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormGreaterThanOrEqualTo(Integer value) {
            addCriterion("display_form >=", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormLessThan(Integer value) {
            addCriterion("display_form <", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormLessThanOrEqualTo(Integer value) {
            addCriterion("display_form <=", value, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormIn(List<Integer> values) {
            addCriterion("display_form in", values, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormNotIn(List<Integer> values) {
            addCriterion("display_form not in", values, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormBetween(Integer value1, Integer value2) {
            addCriterion("display_form between", value1, value2, "displayForm");
            return (Criteria) this;
        }

        public Criteria andDisplayFormNotBetween(Integer value1, Integer value2) {
            addCriterion("display_form not between", value1, value2, "displayForm");
            return (Criteria) this;
        }

        public Criteria andBoothOrderIsNull() {
            addCriterion("booth_order is null");
            return (Criteria) this;
        }

        public Criteria andBoothOrderIsNotNull() {
            addCriterion("booth_order is not null");
            return (Criteria) this;
        }

        public Criteria andBoothOrderEqualTo(Integer value) {
            addCriterion("booth_order =", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderNotEqualTo(Integer value) {
            addCriterion("booth_order <>", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderGreaterThan(Integer value) {
            addCriterion("booth_order >", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderGreaterThanOrEqualTo(Integer value) {
            addCriterion("booth_order >=", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderLessThan(Integer value) {
            addCriterion("booth_order <", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderLessThanOrEqualTo(Integer value) {
            addCriterion("booth_order <=", value, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderIn(List<Integer> values) {
            addCriterion("booth_order in", values, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderNotIn(List<Integer> values) {
            addCriterion("booth_order not in", values, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderBetween(Integer value1, Integer value2) {
            addCriterion("booth_order between", value1, value2, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andBoothOrderNotBetween(Integer value1, Integer value2) {
            addCriterion("booth_order not between", value1, value2, "boothOrder");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andCreateIdIsNull() {
            addCriterion("create_id is null");
            return (Criteria) this;
        }

        public Criteria andCreateIdIsNotNull() {
            addCriterion("create_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreateIdEqualTo(Integer value) {
            addCriterion("create_id =", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdNotEqualTo(Integer value) {
            addCriterion("create_id <>", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdGreaterThan(Integer value) {
            addCriterion("create_id >", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("create_id >=", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdLessThan(Integer value) {
            addCriterion("create_id <", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdLessThanOrEqualTo(Integer value) {
            addCriterion("create_id <=", value, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdIn(List<Integer> values) {
            addCriterion("create_id in", values, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdNotIn(List<Integer> values) {
            addCriterion("create_id not in", values, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdBetween(Integer value1, Integer value2) {
            addCriterion("create_id between", value1, value2, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateIdNotBetween(Integer value1, Integer value2) {
            addCriterion("create_id not between", value1, value2, "createId");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateIdIsNull() {
            addCriterion("update_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdateIdIsNotNull() {
            addCriterion("update_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateIdEqualTo(Integer value) {
            addCriterion("update_id =", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdNotEqualTo(Integer value) {
            addCriterion("update_id <>", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdGreaterThan(Integer value) {
            addCriterion("update_id >", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("update_id >=", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdLessThan(Integer value) {
            addCriterion("update_id <", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdLessThanOrEqualTo(Integer value) {
            addCriterion("update_id <=", value, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdIn(List<Integer> values) {
            addCriterion("update_id in", values, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdNotIn(List<Integer> values) {
            addCriterion("update_id not in", values, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdBetween(Integer value1, Integer value2) {
            addCriterion("update_id between", value1, value2, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateIdNotBetween(Integer value1, Integer value2) {
            addCriterion("update_id not between", value1, value2, "updateId");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andDeleteIdIsNull() {
            addCriterion("delete_id is null");
            return (Criteria) this;
        }

        public Criteria andDeleteIdIsNotNull() {
            addCriterion("delete_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteIdEqualTo(Integer value) {
            addCriterion("delete_id =", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdNotEqualTo(Integer value) {
            addCriterion("delete_id <>", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdGreaterThan(Integer value) {
            addCriterion("delete_id >", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("delete_id >=", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdLessThan(Integer value) {
            addCriterion("delete_id <", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdLessThanOrEqualTo(Integer value) {
            addCriterion("delete_id <=", value, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdIn(List<Integer> values) {
            addCriterion("delete_id in", values, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdNotIn(List<Integer> values) {
            addCriterion("delete_id not in", values, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdBetween(Integer value1, Integer value2) {
            addCriterion("delete_id between", value1, value2, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteIdNotBetween(Integer value1, Integer value2) {
            addCriterion("delete_id not between", value1, value2, "deleteId");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeIsNull() {
            addCriterion("delete_time is null");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeIsNotNull() {
            addCriterion("delete_time is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeEqualTo(Date value) {
            addCriterion("delete_time =", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeNotEqualTo(Date value) {
            addCriterion("delete_time <>", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeGreaterThan(Date value) {
            addCriterion("delete_time >", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("delete_time >=", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeLessThan(Date value) {
            addCriterion("delete_time <", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeLessThanOrEqualTo(Date value) {
            addCriterion("delete_time <=", value, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeIn(List<Date> values) {
            addCriterion("delete_time in", values, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeNotIn(List<Date> values) {
            addCriterion("delete_time not in", values, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeBetween(Date value1, Date value2) {
            addCriterion("delete_time between", value1, value2, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andDeleteTimeNotBetween(Date value1, Date value2) {
            addCriterion("delete_time not between", value1, value2, "deleteTime");
            return (Criteria) this;
        }

        public Criteria andPorcelainIdLikeInsensitive(String value) {
            addCriterion("upper(porcelain_id) like", value.toUpperCase(), "porcelainId");
            return (Criteria) this;
        }

        public Criteria andWorkNameLikeInsensitive(String value) {
            addCriterion("upper(work_name) like", value.toUpperCase(), "workName");
            return (Criteria) this;
        }

        public Criteria andExhibitsRangeLikeInsensitive(String value) {
            addCriterion("upper(exhibits_range) like", value.toUpperCase(), "exhibitsRange");
            return (Criteria) this;
        }

        public Criteria andProductionStandardLikeInsensitive(String value) {
            addCriterion("upper(production_standard) like", value.toUpperCase(), "productionStandard");
            return (Criteria) this;
        }

        public Criteria andPictureLikeInsensitive(String value) {
            addCriterion("upper(picture) like", value.toUpperCase(), "picture");
            return (Criteria) this;
        }

        public Criteria andAuthorNameLikeInsensitive(String value) {
            addCriterion("upper(author_name) like", value.toUpperCase(), "authorName");
            return (Criteria) this;
        }

        public Criteria andShapeLikeInsensitive(String value) {
            addCriterion("upper(shape) like", value.toUpperCase(), "shape");
            return (Criteria) this;
        }

        public Criteria andPatternLikeInsensitive(String value) {
            addCriterion("upper(pattern) like", value.toUpperCase(), "pattern");
            return (Criteria) this;
        }

        public Criteria andTechnologyLikeInsensitive(String value) {
            addCriterion("upper(technology) like", value.toUpperCase(), "technology");
            return (Criteria) this;
        }

        public Criteria andTypeLikeInsensitive(String value) {
            addCriterion("upper(type) like", value.toUpperCase(), "type");
            return (Criteria) this;
        }

        public Criteria andMaterialLikeInsensitive(String value) {
            addCriterion("upper(material) like", value.toUpperCase(), "material");
            return (Criteria) this;
        }

        public Criteria andConfigurationLikeInsensitive(String value) {
            addCriterion("upper(configuration) like", value.toUpperCase(), "configuration");
            return (Criteria) this;
        }

        public Criteria andProcessCharacteristicLikeInsensitive(String value) {
            addCriterion("upper(process_characteristic) like", value.toUpperCase(), "processCharacteristic");
            return (Criteria) this;
        }

        public Criteria andArtisticFeaturesLikeInsensitive(String value) {
            addCriterion("upper(artistic_features) like", value.toUpperCase(), "artisticFeatures");
            return (Criteria) this;
        }

        public Criteria andTransportationLikeInsensitive(String value) {
            addCriterion("upper(transportation) like", value.toUpperCase(), "transportation");
            return (Criteria) this;
        }

        public Criteria andPhoneLikeInsensitive(String value) {
            addCriterion("upper(phone) like", value.toUpperCase(), "phone");
            return (Criteria) this;
        }

        public Criteria andDockingPersonalLikeInsensitive(String value) {
            addCriterion("upper(docking_personal) like", value.toUpperCase(), "dockingPersonal");
            return (Criteria) this;
        }

        public Criteria andIntroductionLikeInsensitive(String value) {
            addCriterion("upper(introduction) like", value.toUpperCase(), "introduction");
            return (Criteria) this;
        }

        public Criteria andRemarksLikeInsensitive(String value) {
            addCriterion("upper(remarks) like", value.toUpperCase(), "remarks");
            return (Criteria) this;
        }

        public Criteria andAudioLikeInsensitive(String value) {
            addCriterion("upper(audio) like", value.toUpperCase(), "audio");
            return (Criteria) this;
        }

        public Criteria andModelZipFileLikeInsensitive(String value) {
            addCriterion("upper(model_zip_file) like", value.toUpperCase(), "modelZipFile");
            return (Criteria) this;
        }

        public Criteria andModelFileLikeInsensitive(String value) {
            addCriterion("upper(model_file) like", value.toUpperCase(), "modelFile");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}